package com.ldkj.panzh.param;

import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.List;

/**
 * 车辆名单查询参数（白名单/黑名单）
 *
 * @author qiancheng
 * @date 2025-11-19
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class VehicleListParam extends BaseParam {

    /**
     * 页码，默认1
     */
    private Integer pageNo = 1;

    /**
     * 每页数量，默认1000
     */
    private Integer pageSize = 1000;

    /**
     * 车牌号（模糊查询）
     */
    private String plateNo;

    /**
     * 车牌颜色
     * 0-白色，1-黑色，2-蓝色，3-黄色，4-绿色，5-其他
     */
    private Integer plateColor;

    /**
     * 车辆类型
     * 0-客车，1-货车，2-轿车，3-面包车，4-小型车，5-中型车，6-大型车
     */
    private Integer vehicleType;

    /**
     * 车主姓名
     */
    private String ownerName;

    /**
     * 车主手机号
     */
    private String ownerPhone;

    /**
     * 区域编号列表
     */
    private List<String> regionIndexCodes;

    /**
     * 是否查询子区域，默认true
     */
    private Boolean isSubRegion = true;

    /**
     * 名单状态
     * 0-无效，1-有效
     */
    private Integer status;

    /**
     * 开始时间（名单生效时间）
     */
    private String startTime;

    /**
     * 结束时间（名单失效时间）
     */
    private String endTime;

    /**
     * 排序字段
     * createTime-创建时间，updateTime-更新时间
     */
    private String orderBy;

    /**
     * 排序方式
     * asc-升序，desc-降序
     */
    private String orderType = "desc";
}
